package top.techqi.usbd

object UsbDefine {
    object DEVICE_CLASS {
        /** Communication Device Class */
        const val CDC: Int = 0x02

        /** Miscellaneous Device Class */
        const val MDC: Int = 0xEF
    }

    object INTF_CLASS {
        /** Communication Device Class Commands */
        const val CDC_COMM: Int = 0x02

        /** Communication Device Class Data */
        const val CDC_DATA: Int = 0x0A
    }

    object INTF_SUBCLASS {
        /** Communication Device Class Abstract Control Model */
        const val CDM_ACM: Int = 0x02
    }

    object ReqType {
        const val SET: Int = 0b00000000
        const val GET: Int = 0x10000000

        const val STD: Int = 0b00000000 // 标准
        const val CLS: Int = 0b00100000 // 类别
        const val VND: Int = 0b01000000 // 厂商

        const val DEV: Int = 0b00000000 // 设备
        const val INT: Int = 0b00000001 // 接口
        const val EDP: Int = 0b00000010 // 端点
        const val OTH: Int = 0b00000011 // 其他
    }
}
